package negocio;


import java.io.*;


import org.xmlpull.v1.*;
import java.io.FileOutputStream;
import android.content.Context;
import android.util.Xml;
import java.io.IOException;



public class GenerarXML
{

		
	// Nombre del archivo
	private final String NOMBRE_ARCHIVO_XML = "animal.xml";
	private FileOutputStream fout;
	

	public boolean crearDocumentoXML(Context contexto,Animal animal) {
		XmlSerializer serializer = Xml.newSerializer();
		try {

			//FileOutputStream fout = contexto.openFileOutput(NOMBRE_ARCHIVO_XML,Context.MODE_PRIVATE);	
			fout = contexto.openFileOutput(NOMBRE_ARCHIVO_XML,Context.MODE_PRIVATE);
			serializer.setOutput(fout, "UTF-8");
			serializer.startDocument(null, true);
			
			serializer.setFeature("http://xmlpull.org/v1/doc/features.html#indent-output", true);
			
			serializer.startTag(null, "Animales");
			
			serializer.startTag(null, "Animal");
			
			serializer.startTag(null, "Nombre");
			serializer.text(animal.getNombre());
			serializer.endTag(null, "Nombre");
			
			serializer.startTag(null, "Situacion");
			serializer.text(animal.getSituacion());
			serializer.endTag(null, "Situacion");
			
			serializer.startTag(null, "Tipo");
			serializer.text(animal.getTipo());
			serializer.endTag(null, "Tipo");
			
			serializer.startTag(null, "Raza");
			serializer.text( String.valueOf(animal.getRaza()));
			serializer.endTag(null, "Raza");
			
			serializer.startTag(null, "Tamanyo");
			serializer.text(animal.getTamanyo());
			serializer.endTag(null, "Tamanyo");
			
			serializer.startTag(null, "Sexo");
			serializer.text(animal.getSexo());
			serializer.endTag(null, "Sexo");
			
			serializer.startTag(null, "Color");
			serializer.text(animal.getColor());
			serializer.endTag(null, "Color");
			
			serializer.startTag(null, "Caracteristica");
			serializer.text(animal.getCaracteristica());
			serializer.endTag(null, "Caracteristica");
			
			serializer.endTag(null, "Animal");
			
			serializer.endTag(null, "Animales");
			
			serializer.endDocument();
			serializer.flush();
			fout.close();

			return true;
			
		} catch (UnsupportedEncodingException e) {
			System.out.println("Error codificacion");
			return false;
		} catch (IOException e) {
			System.out.println(e.getMessage());
			return false;
		} catch (Exception e) {
			System.out.println("Error : " + e);
			return false;
		}
	}

	public String getXMLtoString(Context contexto){
		String texto="";
		String linea="";
		try
		{
		    BufferedReader fin =new BufferedReader(new InputStreamReader(contexto.openFileInput(NOMBRE_ARCHIVO_XML)));
		    linea=fin.readLine();
		    while(linea!=null){
		    	texto+=linea;
		    	linea=fin.readLine();
		    }
		    fin.close();
		}
		catch (Exception ex)
		{
		    ex.printStackTrace();
		}
		return texto;
	}


}